During the procedure of smart meter production, electric power enterprises have noticed the fact that there exist significant differences between sample meters used to check and batch meters for large numbers of production. Lots of batch meters either have an unstable working state or become quality rejected, resulting from lack of detection. Maintenance of these meters causes unnecessary expense. Aiming at this problem, a smart meter software function test scheme was formulated and an embedded smart meter code reversal model was figured out. Taking obtaining system operating characteristics via analysis of smart meter kernel program as main idea, the model operated a software function difference test on smart meter with disassembly technology as means to analyze smart meter firmware code function. The model included three modules, namely firmware code extraction, firmware code disassembly and software function comparison. A Single-step Disassembly Algorithm (SDA) was adopted in firmware code disassembly module based on traditional linear sweep and recursive scanning algorithm. It has remarkable effects when applying the model to sample and batch meters identification. Meanwhile, the model can control function and quality error within 20 percent when maintaining meters of used and to be used.